home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / ADA / GNAT / !gcc / adainc / 4 / ads / i-csycon < prev    next >
Text File  |  1996-02-12  |  6KB  |  143 lines

  1. -----------------------------------------------------------------------------
  2. --                                                                         --
  3. --                GNU ADA RUNTIME LIBRARY (GNARL) COMPONENTS               --
  4. --                                                                         --
  5. --         I n t e r f a c e s . C . S y s t e m _ C o n s t a n t s       --
  6. --                                                                         --
  7. --                                 S p e c                                 --
  8. --                                                                         --
  9. --                            $Revision: 1.10 $                            --
  10. --                                                                         --
  11. --      Copyright (C) 1991,1992,1993,1994,1995 Florida State University     --
  12. --                                                                         --
  13. -- GNARL is free software; you can  redistribute it  and/or modify it under --
  14. -- terms of the  GNU General Public License as published  by the Free Soft- --
  15. -- ware  Foundation;  either version 2,  or (at your option) any later ver- --
  16. -- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
  17. -- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
  18. -- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
  19. -- for  more details.  You should have  received  a copy of the GNU General --
  20. -- Public License  distributed with GNARL; see file COPYING.  If not, write --
  21. -- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
  22. -- MA 02111-1307, USA.                                                      --
  23. --                                                                          --
  24. -- As a special exception,  if other files  instantiate  generics from this --
  25. -- unit, or you link  this unit with other files  to produce an executable, --
  26. -- this  unit  does not  by itself cause  the resulting  executable  to  be --
  27. -- covered  by the  GNU  General  Public  License.  This exception does not --
  28. -- however invalidate  any other reasons why  the executable file  might be --
  29. -- covered by the  GNU Public License.                                      --
  30. --                                                                          --
  31. -- GNARL was developed by the GNARL team at Florida State University. It is --
  32. -- now maintained by Ada Core Technologies Inc. in cooperation with Florida --
  33. -- State University (http://www.gnat.com).                                  --
  34. --                                                                          --
  35. ------------------------------------------------------------------------------
  36.  
  37. package Interfaces.C.System_Constants is
  38.  
  39.    pthread_t_size : constant Integer := 4;
  40.    pthread_attr_t_size : constant Integer := 52;
  41.    pthread_mutexattr_t_size : constant Integer := 12;
  42.    pthread_mutex_t_size : constant Integer := 32;
  43.    pthread_condattr_t_size : constant Integer := 4;
  44.    pthread_cond_t_size : constant Integer := 20;
  45.    pthread_key_t_size : constant Integer := 4;
  46.    jmp_buf_size : constant Integer := 36;
  47.    sigjmp_buf_size : constant Integer := 40;
  48.    sigset_t_size : constant Integer := 4;
  49.  
  50.    --  The sizes of structures  (in bytes) and offsets of their components
  51.    --  (in bits).  These are used to lay out the equivalent Ada records.
  52.    siginfo_size : constant Integer := 12;
  53.    si_signo_offset : constant Integer := 0;
  54.    si_code_offset : constant Integer := 32;
  55.    sigaction_size : constant Integer := 12;
  56.    sa_handler_offset : constant Integer := 0;
  57.    sa_mask_offset : constant Integer := 32;
  58.    sa_flags_offset : constant Integer := 64;
  59.    timespec_size : constant Integer := 8;
  60.    tv_sec_offset : constant Integer := 0;
  61.    tv_nsec_offset : constant Integer := 32;
  62.  
  63.    SIG_BLOCK : constant := 1;
  64.    SIG_UNBLOCK : constant := 2;
  65.    SIG_SETMASK : constant := 4;
  66.    SA_NOCLDSTOP : constant := 8;
  67.    SA_SIGINFO : constant := 0;
  68.    SIG_ERR : constant := -1;
  69.    SIG_DFL : constant := 0;
  70.    SIG_IGN : constant := 1;
  71.    SIGNULL : constant := 0;
  72.    SIGHUP  : constant := 1;
  73.    SIGINT  : constant := 2;
  74.    SIGQUIT : constant := 3;
  75.    SIGILL  : constant := 4;
  76.    SIGABRT : constant := 6;
  77.    SIGFPE  : constant := 8;
  78.    SIGKILL : constant := 9;
  79.    SIGSEGV : constant := 11;
  80.    SIGPIPE : constant := 13;
  81.    SIGALRM : constant := 14;
  82.    SIGTERM : constant := 15;
  83.    SIGSTOP : constant := 17;
  84.    SIGTSTP : constant := 18;
  85.    SIGCONT : constant := 19;
  86.    SIGCHLD : constant := 20;
  87.    SIGTTIN : constant := 21;
  88.    SIGTTOU : constant := 22;
  89.    SIGUSR1 : constant := 30;
  90.    SIGUSR2 : constant := 31;
  91.    NSIG    : constant := 32;
  92.    --  OS specific signals represented as an array
  93.    type Sig_Array is array (positive range <>) of integer;
  94.    OS_Specific_Sync_Sigs : Sig_Array :=
  95.      (NSIG, 5, 7, 10);
  96.    OS_Specific_Async_Sigs : Sig_Array :=
  97.      (NSIG, 12, 16, 23, 24, 25, 26, 27, 28, 29);
  98.    --  End of OS specific signals representation
  99.    EPERM    : constant := 1;
  100.    ENOENT   : constant := 2;
  101.    ESRCH    : constant := 3;
  102.    EINTR    : constant := 4;
  103.    EIO      : constant := 5;
  104.    ENXIO    : constant := 6;
  105.    E2BIG    : constant := 7;
  106.    ENOEXEC  : constant := 8;
  107.    EBADF    : constant := 9;
  108.    ECHILD   : constant := 10;
  109.    EAGAIN   : constant := 11;
  110.    ENOMEM   : constant := 12;
  111.    EACCES   : constant := 13;
  112.    EFAULT   : constant := 14;
  113.    ENOTBLK  : constant := 15;
  114.    EBUSY    : constant := 16;
  115.    EEXIST   : constant := 17;
  116.    EXDEV    : constant := 18;
  117.    ENODEV   : constant := 19;
  118.    ENOTDIR  : constant := 20;
  119.    EISDIR   : constant := 21;
  120.    EINVAL   : constant := 22;
  121.    ENFILE   : constant := 23;
  122.    EMFILE   : constant := 24;
  123.    ENOTTY   : constant := 25;
  124.    ETXTBSY  : constant := 26;
  125.    EFBIG    : constant := 27;
  126.    ENOSPC   : constant := 28;
  127.    ESPIPE   : constant := 29;
  128.    EROFS    : constant := 30;
  129.    EMLINK   : constant := 31;
  130.    EPIPE    : constant := 32;
  131.    ENAMETOOLONG : constant := 63;
  132.    ENOTEMPTY    : constant := 66;
  133.    EDEADLK  : constant := 78;
  134.    ENOLCK   : constant := 79;
  135.    ENOSYS   : constant := 90;
  136.    ENOTSUP  : constant := 91;
  137.    NO_PRIO_INHERIT : constant := 0;
  138.    PRIO_INHERIT : constant := 1;
  139.    PRIO_PROTECT : constant := 2;
  140.    Add_Prio : constant Integer := 2;
  141.  
  142. end Interfaces.C.System_Constants;
  143.